package com.gengzp.common.document.core;

import com.gengzp.common.document.model.resp.ControllerDocumentResp;
import com.gengzp.common.document.model.resp.MethodDocumentResp;
import com.gengzp.common.document.model.resp.ParamDocumentResp;

import java.util.List;

/**
 * @ClassName DocumentService
 * @Description 接口文档服务层接口
 * @Author gengzp
 * @Date 2025/5/21 1:50
 */
public interface DocumentService {

    /**
     * 查询 controller 控制器的接口文档
     *
     * @return controller接口信息集合
     */
    List<ControllerDocumentResp> searchControllerDocument();

    /**
     * 查询 方法 的接口文档
     *
     * @param controllerUrl 控制器url
     * @return 方法接口信息
     */
    MethodDocumentResp searchMethodDocument(String controllerUrl);

    /**
     * 查询 参数 的接口文档
     *
     * @param controllerUrl 控制器url
     * @param methodUrl     方法url
     * @return 参数接口文档信息
     */
    List<ParamDocumentResp> searchParamDocument(String controllerUrl, String methodUrl);

}
